ostree.git
13 years agoostbuild: Some work on qemu deployment
Colin Walters [Tue, 15 May 2012 02:43:25 +0000 (22:43 -0400)]
ostbuild: Some work on qemu deployment

13 years agoostadmin: Update for new trees/ location of trees
Colin Walters [Mon, 14 May 2012 13:29:38 +0000 (09:29 -0400)]
ostadmin: Update for new trees/ location of trees

13 years agoostbuild: Add import-tree
Colin Walters [Tue, 15 May 2012 00:47:14 +0000 (20:47 -0400)]
ostbuild: Add import-tree

This is the new workflow:

$ ostbuild import-tree wip-gnome-menus-3.6
$ $EDITOR ~/build/ostbuild/snapshots/wip-gnome-menus-3.6-2012.1-abcd.json
$ ostbuild build

13 years agoostbuild: Tighten build process significantly
Colin Walters [Sun, 13 May 2012 19:53:55 +0000 (15:53 -0400)]
ostbuild: Tighten build process significantly

First, "resolve" now just picks git commits.  We don't expand
config-opts and patches, nor do we generate tree contents.  This makes
the generated files *much* more human editable.

Next, fold "build-components" and "compose" into just "build".  One
never really wants to just build components.  This lets us eliminate
binary snapshots as a concept; instead we always have a combination of
source snapshot and component/ refs.

13 years agoostbuild: More work on partial builds
Colin Walters [Sat, 12 May 2012 14:42:23 +0000 (10:42 -0400)]
ostbuild: More work on partial builds

13 years agoostbuild: Make partial builds work
Colin Walters [Fri, 11 May 2012 22:22:28 +0000 (18:22 -0400)]
ostbuild: Make partial builds work

If we have component-revisions in our source+binary snapshot, then
we can skip them.

13 years agoostbuild: Write out related objects on composes
Colin Walters [Fri, 11 May 2012 20:24:32 +0000 (16:24 -0400)]
ostbuild: Write out related objects on composes

13 years agoostbuild: Minor fixes
Colin Walters [Fri, 11 May 2012 20:24:23 +0000 (16:24 -0400)]
ostbuild: Minor fixes

13 years agoostbuild: Make binary snapshots an extension of source
Colin Walters [Thu, 10 May 2012 23:07:54 +0000 (19:07 -0400)]
ostbuild: Make binary snapshots an extension of source

This significantly simplifies things; we no longer need to retrieve
individual components via 'pull-components', etc.

13 years agotests: Tweak valgrind suppression
Colin Walters [Tue, 15 May 2012 14:43:55 +0000 (10:43 -0400)]
tests: Tweak valgrind suppression

13 years agocore: Prefer packed metadata
Colin Walters [Tue, 15 May 2012 02:23:01 +0000 (22:23 -0400)]
core: Prefer packed metadata

13 years agocore: Map metadata from repository as trusted
Colin Walters [Mon, 14 May 2012 19:49:49 +0000 (15:49 -0400)]
core: Map metadata from repository as trusted

ot_util_variant_map() assumed untrusted; add a boolean, and use it for
the repository internals.

13 years agocore: Limit recursion during traversal
Colin Walters [Tue, 15 May 2012 21:49:59 +0000 (17:49 -0400)]
core: Limit recursion during traversal

The related objects commit introduced OSTREE_MAX_RECURSION; use it.

13 years agocore: Add write-refs builtin
Colin Walters [Tue, 15 May 2012 00:46:41 +0000 (20:46 -0400)]
core: Add write-refs builtin

This will be used by import-tree to pipe refs to write.

13 years agocore: Allow adding related objects to commits
Colin Walters [Fri, 11 May 2012 20:23:28 +0000 (16:23 -0400)]
core: Allow adding related objects to commits

This will be used to store the set of components.

13 years agocore: Really fix saving variants with REPLACE_DESTINATION
Colin Walters [Mon, 14 May 2012 16:26:15 +0000 (12:26 -0400)]
core: Really fix saving variants with REPLACE_DESTINATION

13 years agocore: Make argument parsing more robust against "lt-ostree" name
Colin Walters [Mon, 14 May 2012 15:31:53 +0000 (11:31 -0400)]
core: Make argument parsing more robust against "lt-ostree" name

When running uninstalled, we were parsing our argv[0] incorrectly.

13 years agocore: Replace pack superindex via rename() rather than truncating
Colin Walters [Mon, 14 May 2012 14:21:05 +0000 (10:21 -0400)]
core: Replace pack superindex via rename() rather than truncating

This helps allow cloning repositories via "cp -al".

13 years agocore: Clarify error message
Colin Walters [Mon, 14 May 2012 15:15:24 +0000 (11:15 -0400)]
core: Clarify error message

13 years agoostree-pull: Avoid an uninitialized variable warning
Matthias Clasen [Tue, 8 May 2012 03:19:21 +0000 (23:19 -0400)]
ostree-pull: Avoid an uninitialized variable warning

13 years agocore: fix a typo
Matthias Clasen [Fri, 11 May 2012 01:00:48 +0000 (21:00 -0400)]
core: fix a typo

ostree config had two 'set' subcommands, but no 'get'.

13 years agocore: Don't look in packs if we found loose object
Colin Walters [Sat, 12 May 2012 14:39:39 +0000 (10:39 -0400)]
core: Don't look in packs if we found loose object

Unless the caller wants us to; which at present none do, but let's be
forward looking and add an option.

13 years agoostbuild: Add ostree-revision in buildroots, bin-to-src
Colin Walters [Thu, 10 May 2012 18:29:23 +0000 (14:29 -0400)]
ostbuild: Add ostree-revision in buildroots, bin-to-src

First, for binary snapshots we need to include the exact revision of
the architecture buildroot.  To do that, introduce
"architecture-buildroots2".

Second, for bin-to-src, we'd like to allow "partial" builds.  So while
we do expand everything to source, *also* include the binary
ostree-revision.  This will allow building just one component, while
reusing the previously built binaries.

13 years agoostbuild: Fix pull-components
Colin Walters [Thu, 10 May 2012 14:30:02 +0000 (10:30 -0400)]
ostbuild: Fix pull-components

We need to pull the actual commits, not the refs.

13 years agopull: Use API to stage files with length
Colin Walters [Thu, 10 May 2012 14:29:26 +0000 (10:29 -0400)]
pull: Use API to stage files with length

Not doing so at the moment triggers a bug in the staging path, and
it's more efficient anyways.

13 years agopull: Add --prefer-loose option
Colin Walters [Thu, 10 May 2012 13:54:56 +0000 (09:54 -0400)]
pull: Add --prefer-loose option

This is a hack...

13 years agocore: unpack: Add --keep-packs option
Colin Walters [Thu, 10 May 2012 13:47:24 +0000 (09:47 -0400)]
core: unpack: Add --keep-packs option

Matches the pack --keep-all-loose.

13 years agocore: Fix ostree-pull to be able to look up remotes in parent repo
Colin Walters [Thu, 10 May 2012 12:50:37 +0000 (08:50 -0400)]
core: Fix ostree-pull to be able to look up remotes in parent repo

We should probably add a generalized inheritance mechanism.

13 years agocore: pack: Keep loose objects which are referenced externally
Colin Walters [Thu, 10 May 2012 03:20:36 +0000 (23:20 -0400)]
core: pack: Keep loose objects which are referenced externally

By default, don't delete loose objects which have hard links.  This
has the natural semantics that if you delete all the checkouts, you
probably want it packed.

Conversely, if it has a hard link, we do want further checkouts to
share storage, even if we pack in between them.

13 years agocore: unpack: Actually delete no-longer-needed pack files
Colin Walters [Thu, 10 May 2012 03:19:54 +0000 (23:19 -0400)]
core: unpack: Actually delete no-longer-needed pack files

13 years agoostbuild: resolve: Add --fetch-patches option
Colin Walters [Wed, 9 May 2012 23:46:29 +0000 (19:46 -0400)]
ostbuild: resolve: Add --fetch-patches option

This is kind of lame, but...

13 years agoostbuild: Allow using dirty-git: for patches too
Colin Walters [Wed, 9 May 2012 23:40:24 +0000 (19:40 -0400)]
ostbuild: Allow using dirty-git: for patches too

13 years agoostbuild: Use .lastfetch file per branch
Colin Walters [Wed, 9 May 2012 23:36:46 +0000 (19:36 -0400)]
ostbuild: Use .lastfetch file per branch

This way we don't try to update gtk+ twice, once for gtk master and
once for gtk-2-22.

13 years agoostree.doap: Update
Colin Walters [Wed, 9 May 2012 18:23:10 +0000 (14:23 -0400)]
ostree.doap: Update

13 years agoostree-pull: Fix segfault by initializing pull_data earlier
Adrian Perez [Wed, 9 May 2012 15:49:03 +0000 (18:49 +0300)]
ostree-pull: Fix segfault by initializing pull_data earlier

In the case of not being able to check the repository or not being able
to parse command line arguments, attributes from "pull_data" would be used
with garbage in them. This patch makes initialization of the sctructure to
happen earlier so it is safe to use in those cases.

13 years agoostbuild: build-components: Ensure specifying components forces rebuild
Colin Walters [Wed, 9 May 2012 16:46:04 +0000 (12:46 -0400)]
ostbuild: build-components: Ensure specifying components forces rebuild

13 years agoMove gnomeos/ to "gnome-ostree" module
Colin Walters [Wed, 9 May 2012 12:45:56 +0000 (08:45 -0400)]
Move gnomeos/ to "gnome-ostree" module

Now that we're hopefully going to be changing the format less.  The
layering here is now more clear, rather than having things entangled.

13 years agoRelease 2012.6
Colin Walters [Tue, 8 May 2012 15:37:42 +0000 (11:37 -0400)]
Release 2012.6

13 years agobuild: A few dist fixes so a tarball build works
Colin Walters [Tue, 8 May 2012 15:59:39 +0000 (11:59 -0400)]
build: A few dist fixes so a tarball build works

13 years agoostadmin: Use /ostree for current working directory of checkouts
Colin Walters [Tue, 8 May 2012 14:21:38 +0000 (10:21 -0400)]
ostadmin: Use /ostree for current working directory of checkouts

Otherwise we put them in the wrong place.

13 years agoostadmin: Make a /ostree/current symbolic link
Colin Walters [Tue, 8 May 2012 13:14:03 +0000 (09:14 -0400)]
ostadmin: Make a /ostree/current symbolic link

13 years agoostadmin: Initial code
Colin Walters [Sun, 6 May 2012 21:03:50 +0000 (17:03 -0400)]
ostadmin: Initial code

13 years agoostbuild: further fixes to pull-components
Carl-Anton Ingmarsson [Sun, 6 May 2012 19:47:01 +0000 (21:47 +0200)]
ostbuild: further fixes to pull-components

Call self.parse_config() so that all necessary directories are parsed.

Also don't call nonexistant self.parse_active_branch() and just use
self.active_branch since it's already have been initialized.

13 years agognomeos: fix ostree-install.sh
Carl-Anton Ingmarsson [Sun, 6 May 2012 17:10:35 +0000 (19:10 +0200)]
gnomeos: fix ostree-install.sh

add back ARCH and BRANCH_PREFIX constants which are still in use.

13 years ago15_ostree: only look for ostree initramfs
Carl-Anton Ingmarsson [Thu, 26 Apr 2012 14:49:04 +0000 (16:49 +0200)]
15_ostree: only look for ostree initramfs

also only add a kernel entry if we find a corresponding initramfs

13 years agoostbuild: Default to (previous) --skip-built
Colin Walters [Mon, 7 May 2012 21:51:12 +0000 (17:51 -0400)]
ostbuild: Default to (previous) --skip-built

For components specified on the command line, we now force a rebuild.
There's also a new option to skip if the git revision matches, but
metadata changed (useful for now to avoid cascading builds if you know
you don't need it).

13 years agoNetworkManager: Fix permissions on config file
Colin Walters [Mon, 7 May 2012 18:55:57 +0000 (14:55 -0400)]
NetworkManager: Fix permissions on config file

https://mail.gnome.org/archives/ostree-list/2012-May/msg00008.html

13 years agoostbuild: make pull-components work
Matthias Clasen [Sun, 6 May 2012 02:40:03 +0000 (22:40 -0400)]
ostbuild: make pull-components work

This builtin did not work for me. It did not initialize self.repo,
it used the nonexisting parse_active_branch function unconditionally,
and it did not actually find the list of components in contents.json.

This commit fixes all three of these issues.

13 years agoFix a typo
Matthias Clasen [Sun, 6 May 2012 03:05:37 +0000 (23:05 -0400)]
Fix a typo

13 years agoostree: avoid a segfault
Matthias Clasen [Sun, 6 May 2012 00:59:23 +0000 (20:59 -0400)]
ostree: avoid a segfault

When running ostree --repo=/ostree/repo without further arguments,
we end up calling strcmp with one argument being NULL.

13 years agocheckout: Deal gracefully with bad input
Matthias Clasen [Sat, 5 May 2012 22:11:27 +0000 (18:11 -0400)]
checkout: Deal gracefully with bad input

I had a /ostree/gnomeos-3.4-i686-devel directory, and this caused
ostree --repo=repo checkout gnomeos-3.5-i686-devel
to segfault.

13 years agoRelease 2012.5
Colin Walters [Sat, 5 May 2012 20:03:53 +0000 (16:03 -0400)]
Release 2012.5

13 years agocore: pack: Fix calculation of size of pack objects
Colin Walters [Sat, 5 May 2012 20:00:53 +0000 (16:00 -0400)]
core: pack: Fix calculation of size of pack objects

In archive mode, due to the previous change, we're now only
looking at metadata size, which is clearly wrong.

13 years agocore: pull: Fix regression from memory leak fixes
Colin Walters [Sat, 5 May 2012 18:59:14 +0000 (14:59 -0400)]
core: pull: Fix regression from memory leak fixes

13 years agognomeos: Delete some files that are now on the wiki
Colin Walters [Sat, 5 May 2012 16:58:56 +0000 (12:58 -0400)]
gnomeos: Delete some files that are now on the wiki

13 years agoRelease 2012.4
Colin Walters [Sat, 5 May 2012 15:53:05 +0000 (11:53 -0400)]
Release 2012.4

13 years agocore: Compile again on GLib 2.28
Colin Walters [Sat, 5 May 2012 15:21:45 +0000 (11:21 -0400)]
core: Compile again on GLib 2.28

13 years agoRelease 2012.3
Colin Walters [Sat, 5 May 2012 15:06:59 +0000 (11:06 -0400)]
Release 2012.3

13 years agoRevert "manifest local"
Colin Walters [Sat, 5 May 2012 14:42:56 +0000 (10:42 -0400)]
Revert "manifest local"

This reverts commit b05275865206acaf6b991212208984df878d86ba.

Conflicts:

gnomeos/3.4/gnomeos-3.4-src.json

13 years agoostbuild: Drop use of link cache, it's gone now
Colin Walters [Sat, 5 May 2012 13:54:42 +0000 (09:54 -0400)]
ostbuild: Drop use of link cache, it's gone now

13 years agoClean up install scripts
Colin Walters [Thu, 3 May 2012 17:26:43 +0000 (13:26 -0400)]
Clean up install scripts

13 years agoostbuild: Create deploy-qemu subcommand
Colin Walters [Thu, 3 May 2012 15:16:08 +0000 (11:16 -0400)]
ostbuild: Create deploy-qemu subcommand

13 years agognomeos-setup: Initialize /var dynamically in ginitscripts
Colin Walters [Thu, 3 May 2012 15:14:58 +0000 (11:14 -0400)]
gnomeos-setup: Initialize /var dynamically in ginitscripts

Rather than doing it in an installer.

13 years agotriggers: Print name of each trigger we're running
Colin Walters [Thu, 3 May 2012 12:49:29 +0000 (08:49 -0400)]
triggers: Print name of each trigger we're running

13 years agoostbuild: Make --shell-on-failure flag to work
Adrian Perez [Wed, 2 May 2012 18:29:40 +0000 (21:29 +0300)]
ostbuild: Make --shell-on-failure flag to work

Fixes an issue which would cause ostbuild to fail to spawn the
debug shell and print a traceback instead.

13 years agoostbuild: More work on deploy commands
Colin Walters [Wed, 2 May 2012 18:49:32 +0000 (14:49 -0400)]
ostbuild: More work on deploy commands

13 years agoostbuild: Use --from-file for buildroot compose for easier debugging
Colin Walters [Wed, 2 May 2012 14:25:58 +0000 (10:25 -0400)]
ostbuild: Use --from-file for buildroot compose for easier debugging

13 years agoostbuild: Rename shadow-repo-init -> init
Colin Walters [Wed, 2 May 2012 11:55:11 +0000 (07:55 -0400)]
ostbuild: Rename shadow-repo-init -> init

13 years agoqemu-pull: Update to use pull-local
Colin Walters [Wed, 2 May 2012 11:30:49 +0000 (07:30 -0400)]
qemu-pull: Update to use pull-local

13 years agoostbuild: Checksum full component metadata for --skip-built
Colin Walters [Wed, 2 May 2012 11:30:02 +0000 (07:30 -0400)]
ostbuild: Checksum full component metadata for --skip-built

If we're using --skip-built, we really do want to rebuild if anything
changed (like the build dependency, configure arguments etc.)

13 years agoostbuild: Break out git-mirror from resolve
Colin Walters [Wed, 2 May 2012 00:51:29 +0000 (20:51 -0400)]
ostbuild: Break out git-mirror from resolve

Other bits

13 years agoostbuild: Use expanduser
Colin Walters [Tue, 1 May 2012 23:28:39 +0000 (19:28 -0400)]
ostbuild: Use expanduser

13 years agoostbuild: Lots more
Colin Walters [Tue, 1 May 2012 20:45:34 +0000 (16:45 -0400)]
ostbuild: Lots more

13 years agoostbuild: Resolve takes --manifest arg
Colin Walters [Tue, 1 May 2012 14:21:33 +0000 (10:21 -0400)]
ostbuild: Resolve takes --manifest arg

13 years agoostbuild: Add tree-to-bin and bin-to-src
Colin Walters [Tue, 1 May 2012 14:02:34 +0000 (10:02 -0400)]
ostbuild: Add tree-to-bin and bin-to-src

13 years agoostbuild: Fix DB saving with /tmp and builddir in different volumes
Adrian Perez [Thu, 26 Apr 2012 15:21:27 +0000 (18:21 +0300)]
ostbuild: Fix DB saving with /tmp and builddir in different volumes

This fixes the case where /tmp resides in one volume, and the build
directory in a different one: by storing the temporary file in the
same directory as the target one, we avoid the case in which os.rename()
would cross file system boundaries.

Reviewed-by: Colin Walters <walters@verbum.org>
13 years agoostbuild: Major rework
Colin Walters [Fri, 6 Apr 2012 19:12:57 +0000 (15:12 -0400)]
ostbuild: Major rework

13 years agomanifest local
Colin Walters [Sun, 29 Apr 2012 23:05:26 +0000 (19:05 -0400)]
manifest local

13 years agoostbuild: Show ostbuild log messages in warningfilter again
Colin Walters [Fri, 27 Apr 2012 20:58:06 +0000 (16:58 -0400)]
ostbuild: Show ostbuild log messages in warningfilter again

13 years agognomeos-install: Call ostree.gnome.org server "gnome", not "origin"
Colin Walters [Thu, 26 Apr 2012 12:15:39 +0000 (08:15 -0400)]
gnomeos-install: Call ostree.gnome.org server "gnome", not "origin"

13 years agocore: checkout: Add --from-file option too
Colin Walters [Wed, 2 May 2012 14:21:19 +0000 (10:21 -0400)]
core: checkout: Add --from-file option too

Easier for debugging if we don't have to redirect stdin.

Conflicts:

src/ostree/ot-builtin-checkout.c

13 years agocore: Improve error message if we hit an unreadable file
Colin Walters [Wed, 2 May 2012 14:21:41 +0000 (10:21 -0400)]
core: Improve error message if we hit an unreadable file

13 years agocore: Add a mutex to cache data structures in preparation for threading
Colin Walters [Thu, 3 May 2012 12:33:34 +0000 (08:33 -0400)]
core: Add a mutex to cache data structures in preparation for threading

Conflicts:

src/libostree/ostree-repo.c

13 years agocore: pull-local: Be a bit more verbose, don't open objects we already have
Colin Walters [Wed, 2 May 2012 23:15:19 +0000 (19:15 -0400)]
core: pull-local: Be a bit more verbose, don't open objects we already have

13 years agocore: Avoid checksumming hardlinks that point into repository
Colin Walters [Fri, 4 May 2012 19:38:21 +0000 (15:38 -0400)]
core: Avoid checksumming hardlinks that point into repository

By default, when doing a commit, scan all of our loose objects and
build up a (device,inode) -> checksum hash.  Then when we're doing a
commit, if we see a file with that (device,inode) pair, we can avoid
checksumming it.

13 years agocore: Drop --link-cache option, we do it by default now for archives
Colin Walters [Fri, 4 May 2012 18:22:09 +0000 (14:22 -0400)]
core: Drop --link-cache option, we do it by default now for archives

13 years agocore: [INCOMPATIBLE CHANGE] Re-split archive content into .file and .filecontent
Colin Walters [Fri, 4 May 2012 15:02:15 +0000 (11:02 -0400)]
core: [INCOMPATIBLE CHANGE] Re-split archive content into .file and .filecontent

This will allow us to use hard links again for user-mode checkouts,
rather than the hackish link cache.  It was pretty silly anyways to
have file objects be stored with just a small metadata header
prepended, but uncompressed.

Either they should be hardlinkable, or compressed (in pack files).

13 years agocore: Handle zero-sized archives, improve fsck error message
Colin Walters [Fri, 4 May 2012 17:40:25 +0000 (13:40 -0400)]
core: Handle zero-sized archives, improve fsck error message

13 years agocore: Add valgrind framework, plug various memory leaks
Colin Walters [Fri, 4 May 2012 14:04:32 +0000 (10:04 -0400)]
core: Add valgrind framework, plug various memory leaks

13 years agocore: Optimize commits to raw repositories
Colin Walters [Fri, 4 May 2012 10:15:47 +0000 (06:15 -0400)]
core: Optimize commits to raw repositories

Avoid creating a temporary intermediate file in the case where we have
the total object length available.

13 years agocore: Clean up object storage API
Colin Walters [Thu, 3 May 2012 23:57:05 +0000 (19:57 -0400)]
core: Clean up object storage API

Rather than passing xattr/file_info for all objects, change the API to
assume we're passing the defined object stream for each type.  Namely,
for OSTREE_OBJECT_TYPE_FILE, we're now giving the "archive file" data.

This significantly cleans up the code for committing to archive mode
repositories, at the cost of having to (at present) create an
intermediate temporary file when committing to raw repositories.

13 years agodaemon: Use g_thread_new() for GLib 2.32
Colin Walters [Thu, 3 May 2012 20:07:18 +0000 (16:07 -0400)]
daemon: Use g_thread_new() for GLib 2.32

13 years agocore: Increase type safety of some local alloc functions
Colin Walters [Thu, 3 May 2012 17:26:24 +0000 (13:26 -0400)]
core: Increase type safety of some local alloc functions

13 years agobuild: Link with -Bsymbolic-functions
Colin Walters [Thu, 3 May 2012 17:40:23 +0000 (13:40 -0400)]
build: Link with -Bsymbolic-functions

Avoids indirecting through PLT for internal calls, at the cost that we
can't use LD_PRELOAD to override internal functions (but we never
really want that, use a debugger).

13 years agocore: Fix gcc uninitialized-variable warning
Colin Walters [Tue, 1 May 2012 22:52:49 +0000 (18:52 -0400)]
core: Fix gcc uninitialized-variable warning

13 years ago3.4: Update GDM patches
Colin Walters [Sun, 29 Apr 2012 16:32:37 +0000 (12:32 -0400)]
3.4: Update GDM patches

13 years agocore: Rename local-clone to pull-local
Colin Walters [Tue, 1 May 2012 21:43:26 +0000 (17:43 -0400)]
core: Rename local-clone to pull-local

Also change it to copy selective refs, rather than enumerating
all objects.

13 years ago3.4: Update libxklavier, re-enable-introspection
Colin Walters [Tue, 1 May 2012 21:28:25 +0000 (17:28 -0400)]
3.4: Update libxklavier, re-enable-introspection

This fixes gnome-shell too.

13 years agocore: Fix 32/8 bit confusion in pack index listing
Colin Walters [Tue, 1 May 2012 20:26:10 +0000 (16:26 -0400)]
core: Fix 32/8 bit confusion in pack index listing

13 years ago3.4: Pull in gtk-engines too
Colin Walters [Sat, 28 Apr 2012 14:50:03 +0000 (10:50 -0400)]
3.4: Pull in gtk-engines too